工控網(wǎng)首頁
>

應用設計

>

PID優(yōu)化整定系統(tǒng)中OPC接口的研究與應用(2)

PID優(yōu)化整定系統(tǒng)中OPC接口的研究與應用(2)

2010/10/9 11:34:00

4、PID優(yōu)化整定系統(tǒng)OPC接口的架構與實現(xiàn)

  4.1 PID優(yōu)化整定系統(tǒng)的軟、硬件結構

  PID優(yōu)化整定系統(tǒng)的硬件為一臺裝有OPC接口客戶端程序的PC機,根據(jù)實際情況分別采 用添加網(wǎng)卡或使用路由器的方式接入到控制系統(tǒng)的工程師站上,使PID優(yōu)化整定系統(tǒng)與工程 師站處在同一局域網(wǎng)內(nèi)。如果原有的工程師站上配有雙網(wǎng)卡,則直接使用網(wǎng)線與工程師站連 接;如果沒有雙網(wǎng)卡,或不方便接入的,則添加路由器,將兩臺機器接入同一網(wǎng)內(nèi)。

 

  圖2 系統(tǒng)網(wǎng)絡結構圖

  PID優(yōu)化整定系統(tǒng)的軟件是指優(yōu)化整定PC機上裝有的自行開發(fā)的PID優(yōu)化整定軟件。數(shù) 據(jù)采集的通訊接口方式使用OPC自動化接口方式,數(shù)據(jù)采集所搭建的環(huán)境結構如圖2所示。

  4.2 OPC接口的實現(xiàn)

  由圖2可以看出,整個系統(tǒng)的服務器端采用DCS提供的OPC接口,在工程師站上放置使 用OPC數(shù)據(jù)訪問接口編寫的OPC應用程序,它主要有兩個方面的功能:一是作為控制系統(tǒng)的 客戶端,連接下位機與上位機,讀取現(xiàn)場數(shù)據(jù);二是作為PID優(yōu)化整定系統(tǒng)的服務器端,連 接PID優(yōu)化整定系統(tǒng)與下位機,將數(shù)據(jù)讀取到PID優(yōu)化整定站,供后期數(shù)據(jù)計算使用。而數(shù) 據(jù)采集部分的客戶端,則放置在PID優(yōu)化整定站,是使用VB語言,按照OPC自動化訪問接口 編寫的應用程序。讀取數(shù)據(jù)后,將相關數(shù)據(jù)保存在Access數(shù)據(jù)庫中,以便于以后隨時查詢使 用。在全部數(shù)據(jù)讀取過程中,應用的網(wǎng)絡協(xié)議主要為TCP/IP協(xié)議。

  4.2.1 OPC服務器端的實現(xiàn)

  根據(jù)不同工廠DCS設備或者工程師站操作系統(tǒng)的具體情況,服務器端分別采用兩種接口 方式,即自動化接口和自定義接口編寫服務器端程序。例如,對于YOKOGAWA CS3000 DCS, 采用的是VB編寫的自動化接口方式;對于ROSEMOUNT DELTA V DCS采用的是C++編寫的 自定義接口方式。

4.2.2 OPC客戶端的實現(xiàn)

  客戶端的主要實現(xiàn)方式是OPC自動化接口方式,使用VB編寫應用程序。對于工廠各裝 置回路中pv(實測值)、sv(設定值)、mv(閥門開度)參數(shù)的采集使用同步通訊的方式; 而對于回路控制的自動、手動情況的采集則使用訂閱通訊的方式,即在參數(shù)(控制狀態(tài))發(fā) 生改變時主動通知客戶端程序。 OPC數(shù)據(jù)訪問對象由分層結構組成,它由上而下包括OPC服務器對象(OPCServer)、 組對象(OPCGroup)、項對象(OPCItem),在設計OPC客戶端程序時,基本按照以上順 序進行連接。對于OPC自動化接口方式,OPC基金會專門為它的開發(fā)提供了“自動化包裝器” OPCDAAuto.dll,在編寫程序前,應該首先在VB項目中引用該動態(tài)鏈接庫,這樣才能調(diào)用 OPC自動化規(guī)范中定義的屬性、方法和事件。客戶端程序設計的基本步驟如下:

 ?。?)在VB工程中添加對OPCDAAuto.dll的引用。

  (2)聲明OPC對象。

  (3)連接OPC服務器,創(chuàng)建OPC對象。設計時需要調(diào)用OPC服務器對象的“Connect” 方法,和OPC服務器建立連接。之后,用OPC服務器對象的“OPCGroups”屬性生成一個組 集合,再調(diào)用“Add”方法在OPC組集合中添加新的OPC組。最后,在對OPC服務器進行訪 問前,要使用“OPCItems”屬性生成項集合,并使用“Add”添加新的OPC項。

 ?。?)讀取數(shù)據(jù)。對于裝置回路PID參數(shù)采集采用同步讀取方式,對于裝置回路的控制 狀態(tài)采集采用訂閱讀取方式;最多可同時讀取16條回路的參數(shù)。

 ?。?)刪除OPC對象,斷開與服務器的連接。連接著OPC服務器的OPC應用程序,在退 出之前必須斷開與OPC服務器的連接。否則,OPC服務器不知道OPC應用程序的退出,計算 機資源就一直不能被釋放,長此以往,會造成計算機資源枯竭而產(chǎn)生嚴重問題。斷開連接時, 使用“Disconnect”方法;并將OPCItems、OPCGroup和OPCServer都置為Nothing,刪除對象。

  4.3 數(shù)據(jù)存儲及導出的實現(xiàn)

  為了給后期PID優(yōu)化整定提供大量完整的數(shù)據(jù),在數(shù)據(jù)采集過程中需要將大量數(shù)據(jù)保存 在Access數(shù)據(jù)庫中,以備使用。由于同時讀取多條回路,數(shù)據(jù)量很大,為避免在最后保存數(shù) 據(jù)時由于數(shù)據(jù)量過大而造成時間過慢,甚至是死機現(xiàn)象,設計時采取每讀取30個數(shù)據(jù)自動保 存一次的方法。另外,在把數(shù)據(jù)導出到Excel過程中,由于Excel自身的限制,一張Sheet保存 的數(shù)據(jù)有限,為了避免數(shù)據(jù)溢出,設計成每保存一定數(shù)據(jù)自動生成一張新的Sheet進行存儲。

  5、結束語

  以OPC為接口通訊方式的數(shù)據(jù)采集模塊是PID優(yōu)化整定系統(tǒng)的基礎,該模塊及整個PID 優(yōu)化整定系統(tǒng)的設計都相對獨立于現(xiàn)場工程師站,使用OPC通訊也只進行讀操作而不進行寫 操作。該設計的好處是,既能使兩臺機器互相沒有影響,又能使客戶端采集到全部DCS數(shù)據(jù)。 鑒于石油化工企業(yè)的重要性,數(shù)據(jù)采集只讀不寫,具有較好的安全性,可以保證原系統(tǒng)數(shù)據(jù) 的安全和純潔,也避免了數(shù)據(jù)錯誤造成的影響,保證了生產(chǎn)的安全。目前,PID優(yōu)化整定系 統(tǒng)經(jīng)過實驗室長期檢驗,已經(jīng)穩(wěn)定的運行于國內(nèi)許多石油化工企業(yè)中,且運行狀況良好。 現(xiàn)在,絕大多數(shù)工控廠商為實現(xiàn)系統(tǒng)的開放性,其DCS都提供了OPC接口。同時,OPC 基金會也在不斷推出新的產(chǎn)品,從OPC DA到OPC XML-DA,再到OPC UA。OPC必然會向 更為廣泛的跨語言、跨平臺、企業(yè)級的方向發(fā)展。

 

投訴建議

提交

查看更多評論
其他資訊

查看更多

超越傳統(tǒng)直覺,MATLAB/Simulink助力重型機械的智能化轉型

新大陸自動識別精彩亮相2024華南國際工業(yè)博覽會

派拓網(wǎng)絡被Forrester評為XDR領域領導者

智能工控,存儲強基 | ??低晭砭手黝}演講

展會|Lubeworks路博流體供料系統(tǒng)精彩亮相AMTS展會